#ifndef CONFIGURATOR_H
#define CONFIGURATOR_H

#include "network.h"
#include "xml_parser.h"
#include "parser.h"
#include "send_xml_impl.h"
#include "send_blank_impl.h"
#include "blank_parser.h"

namespace network {
	class configurator {
	public:
		configurator() {}
		~configurator() {}

		boost::shared_ptr<network::send_impl> get_web_send_impl()
		{
			boost::shared_ptr<network::send_impl> impl(
				new network::send_xml_impl());
			return impl;
		}

		boost::shared_ptr<network::send_impl> get_rs232_send_impl()
		{
			boost::shared_ptr<network::send_impl> impl(
				new network::send_blank_impl());
			return impl;
		}

		boost::shared_ptr<network::parser> get_tcp_parser() 
		{
			boost::shared_ptr<network::parser> p(
				new network::xml_parser());
			return p;
		}

		boost::shared_ptr<network::parser> get_rs232_parser()
		{
			boost::shared_ptr<network::parser> p(
				new network::blank_parser());
			return p;
		}
	private:
	};
}

#endif
